#ifndef __LOCATION_LIST_WIDGET_INCLUDE__
#define __LOCATION_LIST_WIDGET_INCLUDE__
#include <QPointF>
#include <QList>
#include "ui_GPSLocListWidget.h"
#include "GPS_DFM_util.h"
#include "GPSLocationEditor.h"
#include "GPSLocationModel.h"



class MultiLocationEditor :public QWidget {
	Q_OBJECT
public:
	MultiLocationEditor(QWidget* parent = NULL);
	virtual ~MultiLocationEditor();
	QList<QPointF>	GetLocationVector() const;
	GPSLocationTextType getCurrentDisplayType() const;
	void SetCurrentDisplayType(GPSLocationTextType value);
	GPSLocationModel* GetModel() { return model;  }
	QTableView*  getTreeView() {return  ui.tableViewLocation;}

protected:
	virtual void keyPressEvent(QKeyEvent *event);

signals:
	void dataChanged(QList<QPointF> value);
private slots:
	void onDeleteLocation(QModelIndex index);
	void onModelReset();

private:
	Ui::FormGPSLocList ui;
	GPSLocationModel* model;
	GPSLocationEditor* delegate;
};


#endif